Posted by: Shantham | April 14, 2008

SharePoint Navigation Providers – Part 1


I want to share with you all, about navigation features in both WSS3.0 and MOSS. SharePoint Navigation features called Navigation Providers are enabled in the root directory of webapplications’s web.config file to access widely. These named Navigation providers are added to the <SiteMap> element under <System.Web> Section.

Named Providers are defined under WSS3.0 are,

· SPNavigationProvider

· SPSiteMapProvider

· SPContentMapProvider

· SPXmlContentMapProvider

· SPXmlAdminContentMapProvider*

*This named procedure only available in Central Administration webapplication

All the above providers share the same namespace called Microsoft.SharePoint.Navigation

MOSS included some named providers in addition to the WSS3.0 named providers.

· AdministrationQuickLaunchProvider

· SharedServicesQuickLaunchProvider

· GlobalNavSiteMapProvider

· CombinedNavSiteMapProvider

· CurrentNavSiteMapProvider

· CurrentNavSiteMapProviderNoEncode

· MySiteMapProvider

· MySiteLeftNavProvider

· SiteDirectoryCategoryProvider

· UsagePagesSiteMapProvider

 

Provider Names:

AdministrationQuickLaunchProvider:

Assembly

Microsoft.Office.Server.UI

Namespace

Microsoft.Office.Server.UI

Class Name

Microsoft.Office.Server.Web.

AdministrationQuickLaunchProvider

Description

QuickLaunch navigation provider for the central administration site

Assembly Path

GAC

SharedServicesQuickLaunchProvider:

Assembly

Microsoft.Office.Server.UI

Namespace

Microsoft.Office.Server.UI

Class Name

Microsoft.Office.Server.Web.

SharedServicesQuickLaunchProvider

Description

QuickLaunch navigation provider for shared services administration sites

Assembly Path

GAC

PortalSiteMapProvider:

Assembly

Microsoft.SharePoint.Publishing

Namespace

Microsoft.SharePoint.Publishing.Navigation

Class Name

Microsoft.SharePoint.Publishing.Navigation.

PortalSiteMapProvider

Description

Provides PortalSiteMapNode objects that represent a merging of the Windows SharePoint Services 3.0SPNavigation store and dynamic site structure, including sites and pages. This Provider has four navigation providers to merge with WSS3.0 Providers.

Assembly Path

..\12\ISAPI\

*The each different value of NavigationType property in PortalSiteMapProvider object represents the following providers. There are Current, Global & Combined navigationtypes.

GlobalNavSiteMapProvider:

NavigationType: Global

Description: Include SPNavigationNodes from navigation in the TopNavigationBar collection of Windows SharePoint Services; respect global inheritance and include or hide settings.

CombinedNavSiteMapProvider:

NavigationType: Combined

Description: This is attached to the global navigation or top navigation menu by default.

CurrentNavSiteMapProvider:

NavigationType: Current

Description: Gets the PortalSiteMapProvider object that is attached by default to the current navigation or Quick Launch, respect to current inheritance settings and include or hide settings.

CurrentNavSiteMapProviderNoEncode:

NavigationType: Current

EncodeOutput: false

Description: Gets the PortalSiteMapProvider object that is attached to the breadcrumb navigation by default.

*Gets or sets whether to HTML-encode the Title property of each PortalSiteMapNode object.

MySiteMapProvider:

Assembly

Microsoft.SharePoint.Portal

Namespace

Microsoft.SharePoint.Portal

Class Name

Microsoft.SharePoint.Portal.

MySiteMapProvider

Description

MySite provider that returns (MyProfile links) areas and based on the current user context.

Assembly Path

..\12\ISAPI\

MySiteLeftNavProvider:

Assembly

Microsoft.SharePoint.Portal

Namespace

Microsoft.SharePoint.Portal

Class Name

Microsoft.SharePoint.Portal.

MySiteLeftNavProvider

Description

MySite Left Nav provider that returns areas (Quick Launch) and based on the current user context.

Assembly Path

..\12\ISAPI\

SiteDirectoryCategoryProvider:

Assembly

Microsoft.SharePoint.Portal

Namespace

Microsoft.SharePoint.Portal.WebControls

Class Name

Microsoft.SharePoint.Portal.WebControls.

SiteDirectoryCategoryProvider

Description

SiteDirectory Category Provider returns the Category nodes present in the SiteDirectory Sites.

Assembly Path

..\12\ISAPI\

UsagePagesSiteMapProvider:

Assembly

Microsoft.SharePoint.Portal

Namespace

Microsoft.SharePoint.Portal.Analytics

Class Name

Microsoft.SharePoint.Portal.Analytics.

UsagePagesSiteMapProvider

Description

Provider for navigation in Portal Usage pages

Assembly Path

..\12\ISAPI\

SPNavigationProvider:

Assembly

Microsoft.SharePoint

Namespace

Microsoft.SharePoint.Navigation

Class Name

Microsoft.SharePoint.Navigation.

SPNavigationProvider

Description

Provides a base class for Windows SharePoint Services site-map providers that are specialized for SharePoint site navigation.

Node “sid:1002” represents the QuickLaunchBar,

Node “sid:1025” represents the TopNavigationBar

Assembly Path

..\12\ISAPI\

SPSiteMapProvider:

Assembly

Microsoft.SharePoint

Namespace

Microsoft.SharePoint.Navigation

Class Name

Microsoft.SharePoint.Navigation.

SPSiteMapProvider

Description

Provides the SiteMapNode objects that constitute the global content breadcrumb, which represents objects in the site hierarchy above the current site.

Assembly Path

..\12\ISAPI\

SPContentMapProvider:

Assembly

Microsoft.SharePoint

Namespace

Microsoft.SharePoint.Navigation

Class Name

Microsoft.SharePoint.Navigation.

SPContentMapProvider

Description

Provides methods and properties for implementing a site map provider for contents of a Windows SharePoint Services site. This class provides the SiteMapNode objects that constitute the content breadcrumb, where “content” referes to the lists, folders, items, and list forms composing the breadcrumb.

Assembly Path

..\12\ISAPI\

SPXmlContentMapProvider:

Assembly

Microsoft.SharePoint

Namespace

Microsoft.SharePoint.Navigation

Class Name

Microsoft.SharePoint.Navigation.

SPXmlContentMapProvider

Description

Provides methods and properties for implementing a site map provider for contents of a Windows SharePoint Services site. This class provides the SiteMapNode objects that constitute the content breadcrumb, where “content” referes to the lists, folders, items, and list forms composing the breadcrumb.

Site-Map Path

../ApplicationRootDirectory/_app_bin/layouts.sitemap

SPXmlAdminContentMapProvider:

Available to only Central Administration application

Assembly

Microsoft.SharePoint

Namespace

Microsoft.SharePoint.Navigation

Class Name

Microsoft.SharePoint.Navigation.

SPXmlContentMapProvider

Description

Provides methods and properties for implementing a site map provider for contents of a Windows SharePoint Services site. This class provides the SiteMapNode objects that constitute the content breadcrumb, where “content” referes to the lists, folders, items, and list forms composing the breadcrumb.

Site-Map Path

../CentralAdministrationRootDirectory/_app_bin/admin.sitemap

soon I will come with a deep details about each navigation Providers.

Read more…


Responses

  1. […] need to write your own Navigation Provider, although MOSS comes with quite a few (listed here in Shantha Kumar’s blog, or create you own ASP.NET menu which you can also […]

  2. Hey kumar, good information. recently i have a clinet requirement where i need to do the left navigation enhancements, basically we have sites and subsites structure and global bavigation tab structure has deeper sites untill 4 levels.
    and the problem is when we are using a left navigation by selecting a particular global navigation ( which is a Tab from top level navigation structure), we can keep the sturcture inly to 2 levels after the two levels left navigation os completely changing to a structure where we can actually see only the sites under that particlar site but not the structured pathe from which it actually originated from. if you are not clear ….

    this is the structure i have:

    this is my global navigation:

    site1 site2 site3
    s1.1 s2.1
    s1.1.1 s2.2
    s1.1.2
    s1.1.3
    s1.1.3.1
    s1.1.3.2
    s1.2
    s1.3
    this is coming up in the left navigation when i clik on site1 tab
    s1.1
    s1.1.1
    s1.1.2
    s1.1.3
    s1.2
    s1.3

    and if i clik again on s1.1.3 i am getting the following structure for left navigation
    s1.1.3.1
    s1.1.3.2

    and the whole pathe for the entire directory structure is missing in the leftnavigation..

    so I am trying to achieve this condition,,

    can you please give me a suggestion as where needs to look to make a change sort of speak. please send me any thing that you feel appropriate for my condition to my email.. nveeragoni@gmail.com

  3. Сенкс за инфу, почитал с интересом

  4. Hi,
    i have a requirement to change the user name in the breadcrumb for MySite. Generally the bread crumb displays the site collection admin name, is it possible to change?

    regards
    Bhargavi

  5. […] the ways that ASP.NET controls could be leveraged. By this time he also understood the notion of navigation providers which meant that I was able to begin a serious dialogue on how to leverage available tools to get […]

  6. I am not a developer by trade and I’m learning WSS 3.0 as I go along. I’m trying to create drop down menus for my sites on my directory page which are not sub-sites of any parent site. For example, Directory top nav bar shows Site 1, Site 2, Site 3, and Site 4. I have Site 1 linked to Site A, B, C, & D, but these sites are not sub sites of Site 1. I’d like to know if someone can provide code to enable these “lettered” sites as a drop down on my directory page? I’ve researched to my wits end so any help would greatly be appreciated!

    Thank you!

  7. […] Consistent with its ASP.NET 2.0 foundation, SharePoint 2007 relies on the Provider model to feed navigation data to a control.  This is usually a Microsoft.SharePoint.WebControls.AspMenu instance, which mostly is the same as it’s parent System.Web.UI.WebControls.Menu but tweaked to play nice with SharePoint.  Most navigation providers are in the namespaces Microsoft.SharePoint.Navigation and Microsoft.SharePoint.Publishing.Navigation.  Others such as those used by SSPs and My Sites are defined in assemblies primarily used by those respective components.  Shantha Kumar has a great summary of the various SharePoint navigation providers and assemblies in this post. […]

  8. […] Id: Id of the menu control. SiteMapProvider: Site map provider, see the list of site map providers here. I have used GlobalNavSiteMapProvider. StartingNode: Give starting node, if not mentioned then it […]

  9. […] Consistent with its ASP.NET 2.0 foundation, SharePoint 2007 relies on the Provider model to feed navigation data to a control.  This is usually a Microsoft.SharePoint.WebControls.AspMenu instance, which mostly is the same as it’s parent System.Web.UI.WebControls.Menu but tweaked to play nice with SharePoint.  Most navigation providers are in the namespaces Microsoft.SharePoint.Navigation and Microsoft.SharePoint.Publishing.Navigation.  Others such as those used by SSPs and My Sites are defined in assemblies primarily used by those respective components.  Shantha Kumar has a great summary of the various SharePoint navigation providers and assemblies in this post. […]

  10. Thank you.. This really helped

  11. […] Site map provider, see the list of site map providers here. I have used […]

  12. Hi, there seems to be a typo with your sids. According to http://msdn.microsoft.com/en-us/library/bb964679(v=office.12).aspx, sid:1002 is for TopNavBar and sid:1025 for QuickLaunch.

  13. […] SharePoint Navigation Providers – Part 1 « Welcome to ShanthaKumar’s Blog […]

  14. Howdy! This is kind of off topic but I need some guidance from an
    established blog. Is it difficult to set up your own blog?
    I’m not very techincal but I can figure things out pretty fast. I’m thinking
    about making my own but I’m not sure where to start. Do you have any ideas or suggestions? Thank you

  15. This typpe of coat tends to thicken with temperature changes, or regular clipping, and it will also
    hed out minimally, butt regularly, as well. In older dogs it is probably one of the
    leading causes of death. Find Indian astrology with horoscope and live
    astrological prediction , aries horoscope, daily, monthly,
    yearly analysis of birth chart and individual prediction
    of alll planet with gemstone.

  16. […] There is a list of SiteMapProviders here: https://ktskumar.wordpress.com/2008/04/14/sharepoint-navigation-providers-part-1/ […]

  17. […] la stessa origine, o aggiungere alcuni nuovi. Un link su cui (2007) datasouces sono disponibili: ktskumar.wordpress.com/2008/04/14/… Non tutte funzionano nel 2010. Speranza che aiuta un po’. (edit: si potrebbe aggiungere un […]


Leave a comment

Categories